package com.aos.erp.gov.ex.service;

import com.aos.erp.common.bean.PageBean;
import com.aos.erp.common.exception.BizException;
import com.aos.erp.gov.ex.enums.RegisterTaskType;
import com.aos.erp.gov.ex.model.GovExRegisterTask;
import com.aos.erp.gov.ex.model.dto.CheckResultFailDTO;
import com.aos.erp.gov.ex.model.dto.QueryRegisterTaskDTO;

import java.util.List;

public interface GovExRegisterTaskService {

    GovExRegisterTask getById(long id);

    /**
     * 创建添加
     *
     * @param bean
     * @throws BizException
     */
    void addBean(GovExRegisterTask bean);

    /**
     * 导出的查询
     *
     * @return
     */
    PageBean<GovExRegisterTask> queryByPage(QueryRegisterTaskDTO dto);


    /**
     * 保存为已提交
     */
    int saveSubmitted(List<String> idnums, RegisterTaskType type);

    int saveSubmitted(String idnum, RegisterTaskType type,boolean noticeSchool);

    /**
     * 保存为，审批成功
     *
     * @param idnums
     */
    int saveConfirmSuccess(List<String> idnums, RegisterTaskType type);

    int saveConfirmSuccess(String idnum, RegisterTaskType type, boolean noticeSchool);


    /**
     * 保存为失败
     */
    int saveConfirmFailed(List<String> idnums, RegisterTaskType type);

    int saveConfirmFailed(CheckResultFailDTO failDTO, RegisterTaskType type, boolean noticeSchool);
}